home *** CD-ROM | disk | FTP | other *** search
/ Graphics Plus / Graphics Plus.iso / general / gems / g_gemsi.lha / GraphicsGems / Makefile < prev    next >
Encoding:
Makefile  |  1992-04-10  |  2.4 KB  |  101 lines

  1. #
  2. # Makefile for Graphics Gems source
  3. #
  4. # Craig Kolb, 8/90
  5. #
  6. # This make file will build "gemslib.a" and a number of executables.
  7. # Gemslib is built solely for debugging purposes -- it is not intended
  8. # to be used as a library.
  9. #
  10. # Note that some of the gems need additional macros, functions, tables
  11. # driving routines, etc. before they will compile or run properly.
  12. # These include:
  13. #
  14. # AALines
  15. #    Needs a number of macros defined.
  16. # Dissolve
  17. #    Needs a table filled.
  18. # FitCurves
  19. #    Needs a functioning DrawBezierCurve().
  20. # MatrixOrtho
  21. #    Needs a number of matrix routines.
  22. # PolyScan
  23. #    Needs driving routines and other additional code.
  24. # RayPolygon
  25. #    Needs surrounding function structure, declaration of
  26. #    variable types, etc.
  27.  
  28. #
  29. # C compiler flags
  30. #
  31. CFLAGS = -g
  32. #
  33. # Location of Graphics Gems library
  34. #
  35. LIBFILE = gemslib.a
  36.  
  37. #
  38. # Graphics Gems Vector Library
  39. #
  40. VECLIB = GGVecLib.o
  41.  
  42. MFLAGS = "LIBFILE = ../$(LIBFILE)" "GENCFLAGS = $(CFLAGS)"
  43. SHELL = /bin/sh
  44.  
  45. OFILES =    PntOnLine.o ViewTrans.o AAPolyScan.o Albers.o \
  46.         Interleave.o BoundSphere.o BoxSphere.o CircleRect.o \
  47.         ConcaveScan.o Roots3And4.o Dissolve.o DigitalLine.o \
  48.         FastJitter.o FixedTrig.o HSLtoRGB.o HypotApprox.o LineEdge.o \
  49.         MatrixInvert.o MatrixPost.o Median.o PixelInteger.o \
  50.         TriPoints.o Quaternions.o RGBTo4Bits.o RayBox.o \
  51.         SeedFill.o SquareRoot.o DoubleLine.o TransBox.o
  52.  
  53. DIRS = 2DClip PolyScan Sturm
  54.  
  55. ALL =    Hash3D FitCurves Forms NearestPoint Label \
  56.     OrderDither BinRec $(LIBFILE)
  57.  
  58. all: $(ALL)
  59.     @for d in $(DIRS) ; do \
  60.         (cd $$d ; $(MAKE) $(MFLAGS)) ;\
  61.     done
  62.  
  63. $(LIBFILE): $(OFILES) $(VECLIB)
  64.     ar rcs $(LIBFILE) $(OFILES) $(VECLIB)
  65.  
  66. Hash3D: Hash3D.o
  67.     $(CC) $(CFLAGS) -o $@ Hash3D.o
  68.  
  69. FitCurves: FitCurves.o $(VECLIB)
  70.     $(CC) $(CFLAGS) -o $@ FitCurves.o $(VECLIB) -lm
  71.  
  72. Forms: Forms.o
  73.     $(CC) $(CFLAGS) -o $@ Forms.o
  74.  
  75. NearestPoint: NearestPoint.o $(VECLIB)
  76.     $(CC) $(CFLAGS) -o $@ NearestPoint.o $(VECLIB) -lm
  77.  
  78. Label: Label.o
  79.     $(CC) $(CFLAGS) -o $@ Label.o -lm
  80.  
  81. OrderDither: OrderDither.o
  82.     $(CC) $(CFLAGS) -o $@ OrderDither.o
  83.  
  84. BinRec: BinRec.o
  85.     $(CC) $(CFLAGS) -o $@ BinRec.o
  86.     
  87. clean:
  88.     @for d in $(DIRS) ; do \
  89.         (cd $$d ; $(MAKE) $(MFLAGS) clean) ;\
  90.     done
  91.     /bin/rm -f $(OFILES) $(VECLIB)
  92.     /bin/rm -f Hash3D.o FitCurves.o \
  93.         Forms.o NearestPoint.o Label.o OrderDither.o BinRec.o \
  94.         Hash3D FitCurves Forms NearestPoint Label OrderDither BinRec \
  95.         bugs a.out core Part??
  96.  
  97. kit:
  98.     (makekit -iPACKING_LIST -oMANIFEST)
  99.  
  100. $(ALL): GraphicsGems.h
  101.